/*
	This header file contains the structure declarations of n-ary tree and the
	associated linked list used. It also contains the function prototypes used
	with both the data structures.
*/

// linked list (for n-ary) 

struct LL{

	char entry[100];
	char abspath[100];
	struct LL *next;
};

typedef struct LL* NODE;

NODE insert_rear_ll(char[],char[],NODE);

NODE display_ll(NODE,int);



// n-ary tree
struct nary_tree{

	char node_label[25];
	int fdnum;
	char path[100];
	char type[3];
	struct nary_tree *left;
	struct nary_tree *right;

};
typedef struct nary_tree *Tree;
Tree root;
Tree insert(Tree root, char filepath[]);

Tree del_nary(Tree root, char filepath[]);

char *get_ext(char s[]);

Tree mount_nary(char[], char[]);
void RecurseDisplay(Tree root);
void RecDisplay(Tree root);

int searchTree(Tree root, char fullPath[]);
